package com.company.class8;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;

/**
 * @Classname JsonTest
 * @Description 类型说明
 * @Date 2022/5/2 17:38
 * @Created by zbw
 */

public class JsonTest {
    public static void main(String[] args) {
        String s = "{\"status\":200,\"msg\":\"查询成功\",\"nickname\":\"测试账号\",\"id\":\"8092\",\"describe\":\"will的测试账号\"}";
        //转成一个json对象类型的对象
        JSONObject jsonObject = JSON.parseObject(s);
        //获取status的值，看做一个Object对象，输出的时候，转字符串输出
        System.out.println(jsonObject.get("status").toString());
        //如果是一个数字，获取成String，就没有问题
        String status = jsonObject.getString("status");
        //获取msg的值，它就是一个字符串
        String msg = jsonObject.getString("msg");
        //如果一个字符串获取的时候想用getInteger就会类型转型错误
//        Integer msg1 = jsonObject.getInteger("msg");
        System.out.println(msg);
//        System.out.println(msg1);

        //遍历
        System.out.println("--------------------------遍历整个json字符串中的键值对------------");
        for (String key: jsonObject.keySet()){
//            System.out.println(key + "的值是"+jsonObject.get(key));
            System.out.println("+++++++++++++++++++++++++++++++++++++++");
            if(jsonObject.get(key) instanceof Integer){
                System.out.println(jsonObject.get(key) + "是个整型");
            }else if(jsonObject.get(key) instanceof String){
                System.out.println(jsonObject.get(key) + "是个字符串");
            }
        }

    }
}
